home *** CD-ROM | disk | FTP | other *** search
- #!/bin/sh
- # Sub-tests that require a mounted partition.
- . /usr/share/os-prober/common.sh
- set -e
-
- partition=$1
-
- tmpmnt=/var/lib/os-prober/mount
- if [ ! -d $tmpmnt ]; then
- mkdir $tmpmnt
- fi
-
- for type in $(grep -v nodev /proc/filesystems); do
- if mount -o ro -t $type $partition $tmpmnt 2>/dev/null; then
- mountboot="$(linux_mount_boot "$partition" "$tmpmnt")"
- bootpart="${mountboot%% *}"
- mounted="${mountboot#* }"
-
- for test in /usr/lib/linux-boot-probes/mounted/*; do
- if [ -f $test ] && [ -x $test ]; then
- debug "running $test $partition $bootpart $tmpmnt $type"
- if $test $partition $bootpart $tmpmnt $type; then
- debug "$test succeeded"
- repeat_umount $tmpmnt/boot 2>/dev/null || true
- repeat_umount $tmpmnt
- rmdir $tmpmnt || true
- exit 0
- fi
- fi
- done
-
- repeat_umount $tmpmnt/boot 2>/dev/null || true
- repeat_umount $tmpmnt
-
- break
- fi
- done
-
- rmdir $tmpmnt || true
-
- # No tests found anything.
- exit 1
-